/*
 *d6.2.4.cpp
 *Create by Administrator
 * 2017年1月22日
 * 上午9:42:30
 */
#include <iostream>
#include <vector>
using std::string;
using std::cin;
using std::cout;
using std::endl;
using std::vector;
using std::begin;
using std::end;

//尽管形式不同，但这三个print函数是等价的
//每个函数都有一个const int* 类型的形参
void print(const int*beg, const int *end) {
	//输出beg到end之间的(不含end)的所有元素
	while (beg != end)
		cout << *beg++ << endl; //输出当前元素并将指针向前移动一个位置
}

void print(const int ia[], size_t size) {
	for (size_t i = 0; i != size; ++i)
		cout << ia[i] << endl;
}

void print(const int[]);
void print(const int[10]);  //这里的维度表示我们期望数组含有多少元素，实际不一定

void print(int (&arr)[10]) {
	for (auto elem : arr)
		cout << elem << endl;
}

int main() {

	/*int i = 0, j[2] = { 0, 1 };
	 print(&i)
	 print(j)
	 print(begin(j), end(j));*/

	int j[] = { 0, 1 };
	print(j, end(j) - begin(j));

	cout << " " << endl;
	return 0;
}
